/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package entities;

import java.util.ArrayList;
import java.util.Iterator;

/**
 *
 * @author alumno
 */
public class PuntoVenta {

    ArrayList<Factura> facturas;

    public PuntoVenta() {
        facturas = new ArrayList<>();
    }

    public ArrayList<Factura> getFacturas() {
        return facturas;
    }

    public void setFacturas(ArrayList<Factura> facturas) {
        this.facturas = facturas;
    }

    public Factura agregarFactura(String razonsocial, String RUC, String Fecha, String numeroFactura) {
        //String numeroFactura = "001-" + this.facturas.size();
        Factura fac = new Factura(razonsocial, RUC, Fecha, numeroFactura);
        this.facturas.add(fac);
        return fac;
    }

    public void listar() {
        for (Iterator<Factura> it = facturas.iterator(); it.hasNext();) {
            Factura factura = it.next();
            System.out.println("Factura: " + factura.getNumeroFactura());
            System.out.println("Ruc: " + factura.getRUC());
            System.out.println("Fecha: " + factura.getFecha());
            System.out.println("Razon social: " + factura.getRazonsocial());
            for (Iterator<DetalleFactura> it1 = factura.getDetalle().iterator(); it1.hasNext();) {
                DetalleFactura det = it1.next();
                System.out.println("Producto: " + det.getProducto());
                System.out.println("Cantidad: " + det.getCantidad());
                System.out.println("Precio: " + det.getPrecio());
                System.out.println("Subtotal: " + det.getSubtotal());
            }
            System.out.println("Subtotal:" + factura.getSubtotal());
            System.out.println("Igv:" + factura.getIgv());
            System.out.println("Total:" + factura.getTotal());
        }
    }

    public void listar(String numero) {
        Factura facturaimp = null;
        for (Iterator<Factura> it = facturas.iterator(); it.hasNext();) {
            Factura factura = it.next();
            if (factura.getNumeroFactura().equals(numero)) {
                facturaimp = factura;
                break;
            }
        }
        if (facturaimp != null) {
            facturaimp.imprimir();
        }
    }
}
